'\" t
.TH "LOGINCTL" "1" "" "systemd 231" "loginctl"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
loginctl \- 控制 systemd 登录管理器
.SH "SYNOPSIS"
.HP \w'\fBloginctl\fR\ 'u
\fBloginctl\fR [OPTIONS...] {COMMAND} [NAME...]
.SH "描述"
.PP
\fBloginctl\fR
可用于内省与控制
\fBsystemd\fR(1)
登录管理服务
\fBsystemd-logind.service\fR(8)
.SH "选项"
.PP
能够识别的命令行选项如下：
.PP
\fB\-\-no\-ask\-password\fR
.RS 4
在执行特权操作时不向用户索要密码。
.RE
.PP
\fB\-p\fR, \fB\-\-property=\fR
.RS 4
在显示 session/user/seat 属性时， 仅显示此处指定的属性。 若未指定，则显示全部属性。 参数必须是属性名(例如"Sessions")。 可以多次使用此选项以指定多个属性。
.RE
.PP
\fB\-\-value\fR
.RS 4
在使用
\fBshow\fR
显示属性时， 仅显示属性值，而不显示属性名及等号。
.RE
.PP
\fB\-a\fR, \fB\-\-all\fR
.RS 4
在显示 session/user/seat 属性时， 显示全部属性，无论这些属性是否已经被设置。
.RE
.PP
\fB\-l\fR, \fB\-\-full\fR
.RS 4
在显示进程树的时候，不对超长行进行截断。
.RE
.PP
\fB\-\-kill\-who=\fR
.RS 4
与
\fBkill\-session\fR
连用，指定杀死哪个进程。
\fBleader\fR
表示仅杀死会话的领导进程；
\fBall\fR
表示杀死会话的所有进程。 默认值为
\fBall\fR
.RE
.PP
\fB\-s\fR, \fB\-\-signal=\fR
.RS 4
与
\fBkill\-session\fR
或
\fBkill\-user\fR
连用， 指定向选中的进程发送什么信号。 必须设为众所周知的信号名称，例如
\fBSIGTERM\fR(默认值),
\fBSIGINT\fR,
\fBSIGSTOP\fR
之类
.RE
.PP
\fB\-n\fR, \fB\-\-lines=\fR
.RS 4
与
\fBuser\-status\fR
或
\fBsession\-status\fR
连用， 控制显示多少行日志(从最新的一条日志开始计算)。 必须设为一个正整数，默认值是"10"。
.RE
.PP
\fB\-o\fR, \fB\-\-output=\fR
.RS 4
与
\fBuser\-status\fR
或
\fBsession\-status\fR
连用， 控制日志的输出格式。 可用值参见
\fBjournalctl\fR(1)
手册。 默认为
"short"
.RE
.PP
\fB\-H\fR, \fB\-\-host=\fR
.RS 4
操作指定的远程主机。可以仅指定一个主机名(hostname)， 也可以使用
"username@hostname"
格式。 hostname 后面还可以加上容器名(以冒号分隔)， 也就是形如
"hostname:container"
的格式， 以表示直接连接到指定主机的指定容器内。 操作将通过SSH协议进行，以确保安全。 可以通过
\fBmachinectl \-H \fR\fB\fIHOST\fR\fR
命令列出远程主机上的所有容器名称。
.RE
.PP
\fB\-M\fR, \fB\-\-machine=\fR
.RS 4
在本地容器内执行操作。 必须明确指定容器的名称。
.RE
.PP
\fB\-\-no\-pager\fR
.RS 4
不将程序的输出内容管道(pipe)给分页程序。
.RE
.PP
\fB\-\-no\-legend\fR
.RS 4
不输出列标题， 也就是不在输出列表的头部和尾部显示字段的名称。
.RE
.PP
\fB\-h\fR, \fB\-\-help\fR
.RS 4
显示简短的帮助信息并退出。
.RE
.PP
\fB\-\-version\fR
.RS 4
显示简短的版本信息并退出。
.RE
.SH "命令"
.PP
能够识别的命令如下：
.SS "会话命令"
.PP
\fBlist\-sessions\fR
.RS 4
列出当前所有的会话。这是默认命令。
.RE
.PP
\fBsession\-status\fR [\fIID\fR\&.\&.\&.]
.RS 4
显示简洁的会话状态信息，后跟最近的日志。 如果指定了会话ID，那么仅显示指定的会话， 否则显示当前调用者的会话。 此命令主要用于输出人类易读的信息， 如果你想输出易于程序分析的信息， 那么应该使用
\fBshow\-session\fR
命令
.RE
.PP
\fBshow\-session\fR [\fIID\fR\&.\&.\&.]
.RS 4
如果指定了会话ID，那么显示指定会话的各项属性值， 否则显示登陆管理器自身的各项属性值。 除非使用了
\fB\-\-all\fR
选项， 否则空属性将被忽略。 还可以使用
\fB\-\-property=\fR
选项指定仅显示个别属性。 此命令主要用于输出易于程序分析的信息， 如果你想输出人类易读的信息， 那么应该使用
\fBsession\-status\fR
命令。
.RE
.PP
\fBactivate\fR [\fIID\fR]
.RS 4
激活会话。 也就是将处于后台的会话切换到前台(如果同席位的另一个会话正处于前台)。 如果指定了会话ID， 那么将激活指定的会话， 否则将激活当前调用者的会话。
.RE
.PP
\fBlock\-session\fR [\fIID\fR\&.\&.\&.], \fBunlock\-session\fR [\fIID\fR\&.\&.\&.]
.RS 4
锁定/解锁会话(如果会话支持屏幕锁)。 如果指定了会话ID，那么将锁定/解锁指定的会话， 否则将锁定/解锁当前调用者的会话。
.RE
.PP
\fBlock\-sessions\fR, \fBunlock\-sessions\fR
.RS 4
锁定/解锁所有支持屏幕锁的会话。
.RE
.PP
\fBterminate\-session\fR \fIID\fR\&.\&.\&.
.RS 4
结束指定的会话。 也就是杀死指定会话的所有进程、释放所有与此会话相关的资源。
.RE
.PP
\fBkill\-session\fR \fIID\fR\&.\&.\&.
.RS 4
向指定的会话进程发送信号。 使用
\fB\-\-kill\-who=\fR
指定目标进程， 使用
\fB\-\-signal=\fR
指定要发送的信号。
.RE
.SS "用户命令"
.PP
\fBlist\-users\fR
.RS 4
列出当前登录的用户
.RE
.PP
\fBuser\-status\fR [\fIUSER\fR\&.\&.\&.]
.RS 4
显示简洁的已登录用户信息，后跟最近的日志。 如果指定了用户名或UID， 那么仅显示指定的用户， 否则显示当前调用者的用户。 此命令主要用于输出人类易读的信息， 如果你想输出易于程序分析的信息， 那么应该使用
\fBshow\-user\fR
命令。
.RE
.PP
\fBshow\-user\fR [\fIUSER\fR\&.\&.\&.]
.RS 4
如果指定了用户名或UID，那么显示指定用户的各项属性值， 否则显示登陆管理器自身的各项属性值。 除非使用了
\fB\-\-all\fR
选项， 否则空属性将被忽略。 还可以使用
\fB\-\-property=\fR
选项来显示指定的属性。 此命令主要用于输出易于程序分析的信息， 如果你想输出人类易读的信息， 那么应该使用
\fBuser\-status\fR
命令。
.RE
.PP
\fBenable\-linger\fR [\fIUSER\fR\&.\&.\&.], \fBdisable\-linger\fR [\fIUSER\fR\&.\&.\&.]
.RS 4
启用/禁止用户逗留(相当于保持登录状态)。 如果指定了用户名或UID， 那么系统将会在启动时自动为这些用户派生出用户管理器， 并且在用户登出后继续保持运行。 这样就可以允许未登录的用户在后台运行持续时间很长的服务。 如果没有指定任何参数， 那么将作用于当前调用者的用户。
.sp
参见
\fBlogind.conf\fR(5)
中的
\fIKillUserProcesses=\fR
指令。
.RE
.PP
\fBterminate\-user\fR \fIUSER\fR\&.\&.\&.
.RS 4
结束指定用户的所有会话。 这将杀死该用户的所有会话中的所有进程， 同时释放与此用户有关的所有资源。
.RE
.PP
\fBkill\-user\fR \fIUSER\fR\&.\&.\&.
.RS 4
向指定用户的所有进程发送
\fB\-\-signal=\fR
选项指定的信号。
.RE
.SS "席位命令"
.PP
\fBlist\-seats\fR
.RS 4
列出当前本机上的所有可用席位
.RE
.PP
\fBseat\-status\fR [\fINAME\fR\&.\&.\&.]
.RS 4
显示简洁的席位信息，后跟最近的日志。 如果指定了席位名，那么仅显示指定的席位， 否则显示当前调用者会话所属的席位。 此命令主要用于输出人类易读的信息， 如果你想输出易于程序分析的信息， 那么应该使用
\fBshow\-seat\fR
命令。
.RE
.PP
\fBshow\-seat\fR [\fINAME\fR\&.\&.\&.]
.RS 4
如果指定了席位名，那么显示指定席位的各项属性值， 否则显示登陆管理器自身的各项属性值。 除非使用了
\fB\-\-all\fR
选项， 否则空属性将被忽略。 还可以使用
\fB\-\-property=\fR
选项来显示指定的属性。 此命令主要用于输出易于程序分析的信息， 如果你想输出人类易读的信息， 那么应该使用
\fBseat\-status\fR
命令。
.RE
.PP
\fBattach\fR \fINAME\fR \fIDEVICE\fR\&.\&.\&.
.RS 4
将指定的设备(DEVICE)持久的连接到指定的席位(NAME)上。 设备可以用相对于
/sys
文件系统的设备路径表示。 要创建一个新席位，至少需要连接一个显卡。 席位名称必须以
"seat"
开头， 后跟 a\(enz, A\(enZ, 0\(en9, "\-", "_" 字符。 要想从席位上删除一个设备， 可以将此设备连接到另一个席位， 或者使用
\fBflush\-devices\fR
命令。
.RE
.PP
\fBflush\-devices\fR
.RS 4
删除所有先前用
\fBattach\fR
命令连接的设备(同时也删除了所有先前用
\fBattach\fR
命令创建的席位)。 调用此命令之后，所有自动生成的席位将会被保留， 同时所有席位设备将会连接到自动生成的席位上。
.RE
.PP
\fBterminate\-seat\fR \fINAME\fR\&.\&.\&.
.RS 4
结束指定席位上的所有会话。 这将杀死指定席位上的所有会话进程， 同时释放与之关联的所有资源。
.RE
.SH "退出状态"
.PP
返回值为 0 表示成功， 非零返回值表示失败代码。
.SH "例子"
.PP
\fBExample\ \&1.\ \&查询用户状态\fR
.sp
.if n \{\
.RS 4
.\}
.nf
$ loginctl user\-status
fatima (1005)
           Since: Sat 2016\-04\-09 14:23:31 EDT; 54min ago
           State: active
        Sessions: 5 *3
            Unit: user\-1005\&.slice
                  ├─user@1005\&.service
                    \&.\&.\&.
                  ├─session\-3\&.scope
                    \&.\&.\&.
                  └─session\-5\&.scope
                    ├─3473 login \-\- fatima
                    └─3515 \-zsh

Apr 09 14:40:30 laptop login[2325]: pam_unix(login:session):
                       session opened for user fatima by LOGIN(uid=0)
Apr 09 14:40:30 laptop login[2325]: LOGIN ON tty3 BY fatima
.fi
.if n \{\
.RE
.\}
.PP
有 3 与 5 两个会话。会话 3 是一个图形会话， 以星号(*)标记。同时还显示了两个对应的 scope 单元中的进程树。
.SH "环境变量"
.PP
\fI$SYSTEMD_PAGER\fR
.RS 4
指定分页程序。仅在未指定
\fB\-\-no\-pager\fR
选项时有意义。 此变量会覆盖
\fI$PAGER\fR
的值。 将此变量设为空字符串或
"cat"
等价于使用
\fB\-\-no\-pager\fR
选项。
.RE
.PP
\fI$SYSTEMD_LESS\fR
.RS 4
用于覆盖 默认传递给
\fBless\fR
程序的命令行选项 ("FRSXMK")。
.RE
.SH "参见"
.PP
\fBsystemd\fR(1),
\fBsystemctl\fR(1),
\fBsystemd-logind.service\fR(8),
\fBlogind.conf\fR(5)
.\" manpages-zh translator: 金步国
.\" manpages-zh comment: 金步国作品集：http://www.jinbuguo.com
